<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>员工管理系统登录</title>
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta http-equiv="Access-Control-Allow-Origin" content="*">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="format-detection" content="telephone=no">
    <link rel="icon" th:href="@{images/favicon.ico}">
    <link rel="stylesheet" th:href="@{/layui/css/layui.css}" media="all">

    <style>
        html, body {
            width: 100%;
            height: 100%;
            overflow: hidden
        }

        body {
            background: #1E9FFF;
        }

        body:after {
            content: '';
            background-repeat: no-repeat;
            background-size: cover;
            -webkit-filter: blur(3px);
            -moz-filter: blur(3px);
            -o-filter: blur(3px);
            -ms-filter: blur(3px);
            filter: blur(3px);
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: -1;
        }

        .layui-container {
            width: 100%;
            height: 100%;
            overflow: hidden
        }

        .admin-login-background {
            width: 360px;
            height: 300px;
            position: absolute;
            left: 50%;
            top: 40%;
            margin-left: -180px;
            margin-top: -100px;
        }

        .logo-title {
            text-align: center;
            letter-spacing: 2px;
            padding: 14px 0;
        }

        .logo-title h1 {
            color: #1E9FFF;
            font-size: 25px;
            font-weight: bold;
        }

        .login-form {
            background-color: #fff;
            border: 1px solid #fff;
            border-radius: 3px;
            padding: 14px 20px;
            box-shadow: 0 0 8px #eeeeee;
        }

        .login-form .layui-form-item {
            position: relative;
        }

        .login-form .layui-form-item label {
            position: absolute;
            left: 1px;
            top: 1px;
            width: 38px;
            line-height: 36px;
            text-align: center;
            color: #d2d2d2;
        }

        .login-form .layui-form-item input {
            padding-left: 36px;
        }

        .captcha {
            width: 60%;
            display: inline-block;
        }

        .captcha-img {
            display: inline-block;
            width: 34%;
            float: right;
        }

        .captcha-img img {
            height: 34px;
            border: 1px solid #e6e6e6;
            height: 36px;
            width: 98%;
        }

        .toRegister {
            color: blue;
            float: right;
        }

        #captcha {
            cursor: pointer;
        }

        .layui-layer-setwin {
            display: none;
        }

        .toRegister {
            font-size: 12px;
        }

        tip {
            margin-top: 10px;
            line-height: 10px;
            font-size: 10px;
        }
    </style>
</head>
<body>
<div class="layui-container">
    <div class="admin-login-background">
        <div class="layui-form login-form">
            <form class="layui-form" action="">
                <div class="layui-form-item logo-title">
                    <h1>员工管理系统注册</h1>
                </div>
                <div class="layui-form-item">
                    <label class="layui-icon layui-icon-username" for="username"></label>
                    <input type="text" id="username" name="username" value="" lay-verify="required" placeholder="请输入用户名"
                           autocomplete="off" class="layui-input">
                    <tip id="nameMsg" style="color: red;display: none"></tip>
                </div>
                <div class="layui-form-item">
                    <label class="layui-icon layui-icon-password" for="password"></label>
                    <input type="password" id="password" name="password" value="" lay-verify="required|password"
                           lay-reqtext="密码不能为空"
                           placeholder="密码" class="layui-input">
                    <tip id="msg" style="color: red;display: none"></tip>
                </div>
                <div class="layui-form-item">
                    <label class="layui-icon layui-icon-password" for="newPassword"></label>
                    <input type="password" id="newPassword" value="" name="again_password" lay-verify="required"
                           lay-reqtext="确认密码不能为空"
                           placeholder="确认密码" class="layui-input">
                    <tip id="nMsg" style="color: red;display: none">两次密码不一致</tip>
                </div>
                <div class="layui-form-item">
                    <label class="layui-icon layui-icon-vercode" for="captcha"></label>
                    <input type="text" name="captcha" lay-verify="captcha" placeholder="图形验证码" autocomplete="off"
                           class="layui-input verification captcha">
                    <div class="captcha-img">
                        <img th:src="@{/captcha}" id="captcha"/>
                    </div>
                </div>
                <div class="layui-form-item">
                    <a class="toRegister" th:href="@{/login}">已经注册？点我登录</a>
                </div>
                <div class="layui-form-item">
                    <button id="btn-submit" class="layui-btn layui-btn layui-btn-normal layui-btn-fluid" lay-submit=""
                            lay-filter="login">注 册
                    </button>
                </div>
            </form>
        </div>
    </div>
</div>


<script th:src="@{/webjars/jquery/3.5.1/jquery.min.js}" charset="utf-8"></script>
<script th:src="@{/layui/layui.js}" charset="utf-8"></script>
<script th:src="@{/lib/jq-module/jquery.particleground.min.js}" charset="utf-8"></script>
<script th:inline="javascript">

    // 获取前面的路径
    var ctxPath = [[@{/}]];
        // alert(ctxPath);// /ctc/
        //验证码
        $("#captcha").click(function () {
            // alert("1")
            $("#captcha").attr("src", ctxPath + 'captcha?date=' + new Date().getTime());
        });
    layui.use(['form'], function () {
        var form = layui.form,
            layer = layui.layer;

        // 注册过期的时候，跳出ifram框架
        if (top.location != self.location) top.location = self.location;

        // 粒子线条背景
        $(document).ready(function () {
            $('.layui-container').particleground({
                dotColor: '#7ec7fd',
                lineColor: '#7ec7fd'
            });
        });

        // 进行注册操作
        form.on('submit(login)', function (data) {
            console.log(data.field.username);
            //点击注册按钮后禁用
            $("#btn-submit").attr("disabled", "disabled").addClass("layui-btn-disabled");
            data = data.field;
            if (data.username == '') {
                layer.msg('用户名不能为空');
                return false;
            }

            //异步注册请求
            var url = ctxPath + "user/register";
            $.post(url, data, function (response) {
                if (response.code == 0) {
                    //注册成功
                    layer.alert(response.message + '，点击确定后去登录', {
                        skin: 'layui-layer-molv',
                        closeBtn: 1,
                        icon: 6,
                        title: '操作提醒'
                    }, function (index) {
                        window.location = ctxPath + 'login';
                        layer.close(index);
                    });
                } else {
                    //注册失败
                    //点击注册按钮失败后取消禁用
                    $("#btn-submit").removeAttr("disabled", "disabled").removeClass("layui-btn-disabled");
                    layer.alert(response.message, {icon: 5, anim: 6});
                    //换一张验证码
                    $("#captcha").attr("src", ctxPath + 'captcha?date=' + new Date().getTime());
                }
            });
            return false;
        });
    });
</script>
<script>
    var pwd = document.getElementById("password");
    var username = document.getElementById("username");
    var nPwd = document.getElementById("newPassword");
    var nMsg = document.getElementById("nMsg");
    var msg = document.getElementById("msg");
    var nameMsg = document.getElementById("nameMsg");

    if( /^[a-zA-Z0-9_-]{6,16}$/.test(username.value)
        &&/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/.test(pwd.value)
        && pwd.value == nPwd.value
        && pwd.value != '' ){
        $("#btn-submit").removeAttr("disabled", "disabled").removeClass("layui-btn-disabled");
    }

    //账号验证
    username.onblur = function () {
        if (/^[a-zA-Z0-9_-]{6,16}$/.test(username.value)) {
            nameMsg.style.display = "none";
            pwdV();
        } else {
            nameMsg.style.display = "block";
            $("#btn-submit").attr("disabled", "disabled").addClass("layui-btn-disabled");
            nameMsg.innerText = "用户名由6到16位字母，数字，下划线组成";
            return false;
        }
    };

    //密码验证
    function pwdV() {
        pwd.onblur = function () {
            if (/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/.test(pwd.value)) {
                msg.style.display = "none";
                nPwdV();
            } else {
                msg.style.display = "block";
                $("#btn-submit").attr("disabled", "disabled").addClass("layui-btn-disabled");
                msg.innerText = "密码至少包含 数字和英文，长度6-20";
                return false;
            }
        };
    }
    // //密码改变消失
    // pwd.oninput = function () {
    //     if (pwd.value != null) {
    //         $("#btn-submit").removeAttr("disabled", "disabled").removeClass("layui-btn-disabled");
    //         msg.style.display = 'none';
    //     }
    // };
    //确认两次密码是否一样判断
    function nPwdV() {
        nPwd.onblur = function () {
            //不一样
            if (pwd.value != nPwd.value) {
                nMsg.style.display = 'block';
                $("#btn-submit").attr("disabled", "disabled").addClass("layui-btn-disabled");
                return false;
            }
            //一样
            if (pwd.value == nPwd.value && pwd.value != '') {
                nMsg.style.display = 'none';
            }
        };
    }

</script>
</body>
</html>
